package top.healthylife.gateway.platform.br.api.api.basicdata;


import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import top.healthylife.gateway.core.service.ParentFace;
import top.healthylife.gateway.dto.annotation.ApiServiceExplain;
import top.healthylife.gateway.platform.br.api.utils.GetmeltingTokenUtils;
import top.healthylife.gateway.platform.br.dto.basicdata.locationverification.req.BrReqLocationVerificationDto;
import top.healthylife.gateway.platform.br.dto.basicdata.locationverification.res.BrResLocationVerificationDto;

/**
 * @author cl
 * @version 1.0
 * @date 2020/4/22 17:12
 */
@Slf4j
@Service
@ApiServiceExplain( docUrl="https://account-self.100credit.com/", price = 20,apiName = "职居地验证", info = "用户输入的居住地/工作地与地址信息库的一致性核查")
public class LocationVerificationApi implements ParentFace<BrReqLocationVerificationDto, BrResLocationVerificationDto> {
    /**
     * 接口唯一标识
     */
    static final String APIIDENTIFICATION = "LocationVer";

    /**
     * 接口版本号
     */
    static final String VESION = "1.0";

    @Override
    public BrResLocationVerificationDto execute(BrReqLocationVerificationDto brDemoApi){
        //访问百融获取数据
        String apiData = GetmeltingTokenUtils.getApiData(APIIDENTIFICATION, VESION
                , BeanUtil.beanToMap(brDemoApi), GetmeltingTokenUtils.systemConfigInfo(brDemoApi));
        return JSON.parseObject(apiData, BrResLocationVerificationDto.class);
    }
}
